/**
 * @desc  		分销规则页面JS
 * @file_name  index.js
 * @author     coco
 * @data       2015年7月28日上午10:29:06
 *
 */

$(function() {
	var commonCheckStr = "input[type=text]"; //检查的字符串
	var checkStr = "input[name='percent[]'],input[name='money[]'],input[name='discount[]']"; //检查的字符串
	var eventName = 'keyup blur paste';

	var $modeContainer=$("#modeContainer");
	var $userLeverTipTable=$("#userLeverTipTable");   //会员设置里的积分设置
	var $superModeContainer=$("#superModeContainer"); //超级合伙人
	//-----------切换分佣模式
	$("input[name=divideType]").on("click", function(e) {
		var value = $(this).attr("data-value");
		if(value=="3"){
			$("#extraConainer").removeClass("hide");
			//只显示代理,不显示粉丝
			$setContainer2.removeClass("hide");
			$setContainer1.addClass("hide");
		}else{
			$("#extraConainer").addClass("hide");
			//全显示代理,粉丝
			$setContainer1.removeClass("hide");
			$setContainer2.removeClass("hide");
		}
		//console.log(value);
		//如果是加成模式
		if(value=="3"){
			$modeContainer.addClass("hide");
			$userLeverTipTable.removeClass("hide");
			$superModeContainer.removeClass("hide");
		}else{
			$modeContainer.removeClass("hide");
			$userLeverTipTable.addClass("hide");
			$superModeContainer.addClass("hide");
		}
		$allMode.attr("checked",false);  
	});
	$("#totalPercent").delegate(null, eventName, function(e) {
		if (e.type == "focusout" || e.type == "paste") {
			checkIsNumber($(e.target), true); //检查输入值是否为数字
			showTotalEarnings();
		} else {
			checkIsNumber($(e.target)); //检查输入值是否为数字
		}
	});
	var $setContainer1=$("#setContainer1");
	var $setContainer2=$("#setContainer2");
	//
	var $allMode=$("input[name=mode]");
	//----------切换分销模式
	$allMode.on("click", function(e) {
		var THIS=$(this);
		var val=THIS.val();
		switch(val){
			case 'agent_fans':
				$setContainer1.removeClass("hide");
				$setContainer2.removeClass("hide");
				break;
			case 'fans':
				$setContainer1.addClass("hide");
				$setContainer2.removeClass("hide");
				break;
			case 'agent':
				$setContainer1.removeClass("hide");
				$setContainer2.addClass("hide");
				break;
		}
		
	});
	
	
	showTotalEarnings();
	$("#agentLevelTable").delegate(checkStr, eventName, function(e) {
		//	$(checkStr).on('keyup blur afterpaste', function(e) {
		if (e.type == "focusout" || e.type == "paste") {
			checkIsNumber($(e.target), true); //检查输入值是否为数字
		} else {
			checkIsNumber($(e.target)); //检查输入值是否为数字
		}
	});
	$("#fansLevelTable").delegate(commonCheckStr, eventName, function(e) {
		if (e.type == "focusout" || e.type == "paste") {
			checkIsNumber($(e.target), true); //检查输入值是否为数字
			showTotalEarnings();
		} else {
			checkIsNumber($(e.target)); //检查输入值是否为数字
		}
	});
	$("#agentOneTimeBonus,#agentPermanentBonus,#fansOneTimeBonus,#fansPermanentBonus").delegate(null, eventName, function(e) {
		//		checkIsNumber($(e.target)); //检查输入值是否为数字
		if (e.type == "focusout" || e.type == "paste") {
			checkIsNumber($(e.target), true); //检查输入值是否为数字
		} else {
			checkIsNumber($(e.target)); //检查输入值是否为数字
		}
	});


	/**
	 * 检查输入值是否为数字
	 * @param {String} element 目标元素
	 */
	function checkIsNumber(element, checkValid) {
		var value = element.val().replace(/[^.0123456789]/g, '');
		if (checkValid) {
			var re = /^[1-9]\d*|^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$/; //非负整数+小数点  							
			if (!re.test(value) && value != "") {
				$(element).val(0);
			} else {
				element.val(value);
			}
		} else {
			element.val(value);
		}

	};
	//提示层级
	var $agentConut=$("#agentConut");
	var agentConut=parseInt($agentConut.html());
	function addAgentConut(){
		agentConut++;
		$agentConut.html(''+agentConut);
	}
	function decAgentConut(){
		agentConut--;
		$agentConut.html(''+agentConut);
	}
	/**
	 * 代理商添加层级
	 */
	$("#addAgentLevelRow").click(function() {
		createAgentRow();
		addAgentConut();
	});

	/**
	 * 删除处于末端的代理商层级
	 */
	$("#agentLevelTable").delegate(".delete", "click", function() {
		var level = parseInt($(this).parent().parent().find(".agentLevel").text());
		var size = $("#agentLevelTable").find("tr").size() - 1;
		if (level == size) {
			General.confirm("您确定要删除吗?", null, deleteAgentRow, null, $(this));
		} else {
			General.alert("请按规则从最低级开始删除");
		}
	})
	function deleteAgentRow (element) {
		element.closest("tr").remove();
		decAgentConut();
	}

	/**
	 * 输入判定
	 */
	//	$("#fansLevelTable").delegate("input", "blur", function() {
	//		var value = $(this).val();
	//		var re = /^[1-9]\d*|^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$/; //非负整数+小数点  							
	//		if (!re.test(value)) {
	//			$(this).val(0);
	//		}
	//		showTotalEarnings();//显示当前返佣比例总和
	//	})
	//显示当前返佣比例总和
	function showTotalEarnings() {
		var totalpercent = 0;
		$("#fansLevelTable").find("input").each(function() {
			var current = parseFloat($(this).val());
			if (isNaN(current)) {
				current = 0;
				$(this).val(current);
			}
			totalpercent += current;
		})
		$("#fansTotalPercent").html(totalpercent);
		if (totalpercent > 100) {
			$("#fansTotalPercentError").show();
		} else {
			$("#fansTotalPercentError").hide();
		}
	}

	$("#fansLevelTable").delegate("a[data-id=delete]", "click", function(e) {
		General.stopEvent(e);
		General.confirm("您确定要删除吗?", null, deleteFansRow, null, $(this));
	});
	function deleteFansRow (element) {
		element.closest("tr").remove();
		showTotalEarnings();
		//console.log("删除");
		decFansLevelConut();
	}
	/**
	 * 指定层级之后创建粉丝返佣table
	 */
	//	$("#createFansLevelTable").keyup(function() {
	//		var value = $(this).val();
	//		if (value < 1) {
	//			$(this).val(1);
	//		}
	//		createFansTable(value);
	//	})
	$("#createFansLevelTable").click(function() {
		//console.log("添加");
		createFansTable();
		addFansLevelConut();
	});
	//提示粉丝层级
	var $FansLevelConut=$("#FansLevelConut");
	var fansLevelConut=parseInt($FansLevelConut.html());
	function addFansLevelConut(){
		fansLevelConut++;
		$FansLevelConut.html(''+fansLevelConut);
	}
	function decFansLevelConut(){
		fansLevelConut--;
		$FansLevelConut.html(''+fansLevelConut);
	}


}); //end

/**
 * 创建新的代理商层级
 */
function createAgentRow() {
	var size = $("#agentLevelTable").find("tr").size() - 1;
	var index = size + 1;
	var $html = '<tr><td class="agentLevel">' + index + '</td>';
	$html += '<td><input type="text" value="" name="grade[]" /></td>';
	$html += '<td><div class="input-group short"><input type="text" value="" name="percent[]" class="form-control"/><span class="input-group-addon">%</span></div></td>';
	$html += '<td class="hide"><div class="input-group short"><input type="text" value="1" name="money[]" class="form-control"/><span class="input-group-addon">元</span></div></td>';
	$html +='<td class="hide"><div class="input-group short"><input type="text" value="1" name="withdraw[]" class="form-control" /><span class="input-group-addon">元</span></div>	</td>';
	$html += '<td class="hide"><div class="input-group shor"><input type="text" value="1" name="discount[]" class="form-control"/><span class="input-group-addon">折</span></div></td>';
	$html += '<td><a href="javascript:void(0)" class="delete" >删除</a></td>';
	$("#agentLevelTable").append($html);
}

/**
 * 创建粉丝表格
 */
function createFansTable() {
	var str = '<tr><td>分享者</th><td><div class="input-group short"><input type="text" value="0" name="share[]" class="form-control"><span class="input-group-addon">%</span></div></td><td><a href="#" class="blue" data-id="delete">删除</a></td></tr>';
	$("#fansLevelTable tr:last").before(str);
};
/*function createFansTable(level) {
	var html = '<tr><th>厂家</th><td></td></tr>';
	//	html += '<tr><th>：</th><td></td></tr>';

	if (level == 1) {
		html += '<tr><th>消费者</th><td></td></tr>';
	} else {
		for (var i = 1; i < level; i++) {
			html += '<tr><th>分享者</th><td><div class="input-group short"><input type="text" value="0" name="share[]" class="form-control"/><span class="input-group-addon">%</span></div></td></tr>';
		}
		html += '<tr><th>消费者</th><td></td></tr>';
	}
	$("#fansLevelTable").html(html);
}*/